//
// Created by Soar Qin on 2017/8/18.
// Copyright (c) 2017 Soar Qin. All rights reserved.
//

#pragma once

namespace core::async {

class Loop;

class IoBase {
    DISABLE_CLASS_COPY(IoBase);
public:
    explicit inline IoBase(Loop &loop): loop_(loop) {}
    virtual ~IoBase() = default;

    inline Loop &getLoop() { return loop_; }

protected:
    Loop &loop_;
};

}
